Global Effects: Render Blends
   Render blends affect how two effect lists blend with each other, or
   how a signle effect renders or changes everything else.  I've included a short
   description of each blend mode, plus an example of how they work individually.

Ignore
   Disables the effect's blending entirely

Replace
   Replaces the picture entirely with the new frame

50/50 Blend
   Takes the average of the two frames.

Maximum Blend
   Uses the greatest amount of color between the two frames.

Additive Blend
   Adds the color values of the render to the previous frame.

Subtractive Blend 1
   Subtracts the previous frame from the new one

Subtractive Blend 2
   Subtracts the new frame from the previous

Every Other Line
   Renders every other line of the previous frame and the rest of the
   lines from the new one.

Every Other Pixel
   Same as Every Other Line, but in pixels

XOR
   Calculates a binary XOR on each color channel, seperately.

Adjustable Blend
   The bar is how much of the previous frame should be used in
   relation to the new one (i.e., one quarter of the way down takes
   25% of the previous and 75% of the new)

Multiply Blend
   The end product is the new pixel's values multiplied by the previous
   pixel's values divided by 256 (i.e., the percentage of the previous
   pixel's values relative to white)

Buffer Blend
   This one's a bit complicated: It acts as an adjustable blend, but
   using the buffer's color values as percentages (for each color
   channel).
      Invert
      Uses the negative of the selected buffer.

EXAMPLES
Using a previous pixel of the color
red = 62
green = 64
blue = 63
and an edited pixel of the color
red = 30
green = 32
blue = 31
this is the end product of each blend:

Ignore
red = 62 + 30 * 0 = 62
green = 64 + 32 * 0 = 64
blue = 63 + 31 * 0 = 63

Replace
red = 62 * 0 + 30 = 30
green = 64 * 0 + 32 = 32
blue = 63 * 0 + 31 = 31

50/50
red = (62 + 30) / 2 = 92 / 2 = 46
green = (64 + 32) / 2 = 96 / 2 = 48
blue = (63 + 31) / 2 = 94 / 2 = 47

Maximum
red = 62 (because 62 is greater than 30)
green = 64 (...)
blue = 63 (...)

Additive
red = 62 + 30 = 92
green = 64 + 32 = 96
blue = 63 + 31 = 94

Buffer
BUFFER PIXEL:
red = 128
green = 256
blue = 64

red = (62 + 30) * 128 / 256 = 92 / 2 = 46
green = (64 + 32) * 256 / 256 = 96 / 1 = 96
blue = (63 + 31) * 64 / 256 = 94 / 4 = 23.5 = 23 **

Subtractive 1
red = 30 - 62 = 0*
green = 32 - 64 = 0*
blue = 31 - 63 = 0*

Subtractive 2
red = 62 - 30 = 32
green = 64 - 32 = 32
blue = 63 - 31 = 32

XOR
First, we need to convert to binary.  The process of changing bases is explained in the Language and Application.txt file.
original red = 01111100
new red = 01111000
original green = 00000010
new green = 00000100
original blue = 11111100
new blue = 11111000
Now, we calculate a binary XOR between the original and the new values, for each color channel.  XOR stands for "exclusive or", which means only those digits who are different, but not those who are the same, will be 1 in the final output.  Notice how the bits in the final colors are only 1 if the original and new bits are different, but not if they're the same:
01111100 = original red
01111000 = new red
00000100 = final red
00000010 = original green
00000100 = new green
00000110 = final green
11111100 = original blue
11111000 = new blue
00000100 = final blue
Now we convert back into decimal:
red = 00000100 = 32
green = 00000110 = 96
blue = 00000100 = 32

Adjustable (one quarter)
red = 30 x 0.25 + 62 x 0.75 = 7.5 + 46.5 = 54
green = 32 x 0.25 + 64 x 0.75 = 8 + 48 = 58
blue = 31 x 0.25 + 63 x 0.75 = 7.75 + 47.25 = 55

Adjustable (three quarters)
red = 30 x 0.75 + 62 x 0.25 = 22.5 + 15.5 = 38
green = 32 x 0.75 + 64 x 0.25 = 24 + 16 = 40
blue = 31 x 0.75 + 63 x 0.25 = 23.25 + 15.75 = 39

Multiply
red = 62 x (30 / 256) = 62 x 0.1171875 = 7**
green = 64 x (32 / 256) = 64 x 0.125 = 8
blue = 63 x (31 / 256) = 63 x 0.13109375 = 7**


I left out Every Other Line/Pixel and Buffer Blend because they can't
be explained this way.  I hope you found the brief description useful ;)


Any help is appreciated; if I'm wrong about anything (or if you know
something I don't know), e-mail me at therealatero@hotmail.com


*No negative numbers
**No fractions/decimals (truncation)